#ifndef _BMPSTRUCTS_
#define _BMPSTRUCTS_

/**
 * Struct to read bitmaps files (.bmp).
 * Each field represents a field of the .bmp file specification
 */
struct BMPFILEHEADER 
{
	unsigned short	bfType;
	unsigned int	bfSize;
	unsigned short	bfReserved1;
	unsigned short	bfReserved2;
	unsigned int	bfOffBits;
}__attribute__((packed));       //this attribute doesn't work whith MVS

/**
 * Struct to read bitmaps files (.bmp).
 * Each field represents a field of the .bmp file specification
 */
struct BMPINFOHEADER
{
	unsigned int   biSize;
	unsigned int   biWidth;
	unsigned int   biHeight;
	unsigned short biPlanes;
	unsigned short biBitCount;
	unsigned int   biCompression;
	unsigned int   biSizeImage;
	unsigned int   biXPelsPerMeter;
	unsigned int   biYPelsPerMeter;
	unsigned int   biClrUsed;
	unsigned int   biClrImportant;
};

/**
 * Struct to read bitmaps files (.bmp).
 * Each field represents a field on the .bmp file specification
 */
struct TRGBTRIPLE
{
	unsigned char rgbtBlue;
	unsigned char rgbtGreen; 
	unsigned char rgbtRed;
};

#endif
